/**
 * 
 */
package nus.mtech.bill;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;

/**
 * @author Chew Xunmao
 * 
 */
public class Bill implements Serializable {
	private static final long serialVersionUID = 4925862047267252992L;

	private String billNo;
	private double totalBill;
	private double totalGST;
	private final double GST_APPLIED = 7;
	private boolean printed = false;
	private String accountNo;
	private String companyName;
	private String customerAddress;
	private String companyAddress;
	private double previousBalance;
	private double payments;
	private Date billDate;
	private Date dueDate;
	private String digitalVoiceNumber;
	private String noOfCableTVChannels;
	private String cableTVChannelRate;
	private String mobileVoiceNumber;
	private double digitalVoiceSubscriptionChargesSummary;
	private double digitalVoiceUsageChargesSummary;
	private double mobileVoiceSubscriptionChargesSummary;
	private double mobileVoiceUsageCharges;
	private double cableTVSubscriptionChargesSummary;
	private double additionalCableTVChannelsCharges;
	private int cableTVAdditionalChannelNumber;
	private double detailDigitalVoiceSubChargeLine;
	private double detailDigitalVoiceSubCallTransfer;
	private double detailDigitalVoiceUsageChargeLocalCalls;
	private double detailDigitalVoiceUsageChargeIDDCalls;
	private double detailMobileVoiceChargeSubMobile;
	private double detailMobileVoiceChargeSubRoaming;
	private double detailMobileVoiceChargeSubDataServices;
	private double detailMobileVoiceUsageChargeLocalCalls;
	private double detailMobileVoiceUsageChargeIDDCalls;
	private double detailMobileVoiceUsageChargeRoamingCalls;
	private ArrayList<String> listOfCharges;

	public String getNoOfCableTVChannels() {
		return noOfCableTVChannels;
	}

	public void setNoOfCableTVChannels(String noOfCableTVChannels) {
		this.noOfCableTVChannels = noOfCableTVChannels;
	}

	public String getCableTVChannelRate() {
		return cableTVChannelRate;
	}

	public void setCableTVChannelRate(String cableTVChannelRate) {
		this.cableTVChannelRate = cableTVChannelRate;
	}

	public double getTotalGST() {
		return totalGST;
	}

	public void setTotalGST(double totalGST) {
		this.totalGST = totalGST;
	}

	public String getDigitalVoiceNumber() {
		return digitalVoiceNumber;
	}

	public void setDigitalVoiceNumber(String digitalVoiceNumber) {
		this.digitalVoiceNumber = digitalVoiceNumber;
	}

	public String getMobileVoiceNumber() {
		return mobileVoiceNumber;
	}

	public void setMobileVoiceNumber(String mobileVoiceNumber) {
		this.mobileVoiceNumber = mobileVoiceNumber;
	}

	public int getCableTVAdditionalChannelNumber() {
		return cableTVAdditionalChannelNumber;
	}

	public void setCableTVAdditionalChannelNumber(
			int cableTVAdditionalChannelNumber) {
		this.cableTVAdditionalChannelNumber = cableTVAdditionalChannelNumber;
	}

	private double cableTVAddtionalChargePerLine;

	public double getCableTVAddtionalChargePerLine() {
		return cableTVAddtionalChargePerLine;
	}

	public void setCableTVAddtionalChargePerLine(
			double cableTVAddtionalChargePerLine) {
		this.cableTVAddtionalChargePerLine = cableTVAddtionalChargePerLine;
	}

	public String getAccountNo() {
		return accountNo;
	}

	public void setAccountNo(String accountNo) {
		this.accountNo = accountNo;
	}

	public String getCustomerAddress() {
		return customerAddress;
	}

	public void setCustomerAddress(String customerAddress) {
		this.customerAddress = customerAddress;
	}

	public double getPreviousBalance() {
		return previousBalance;
	}

	public void setPreviousBalance(double previousBalance) {
		this.previousBalance = previousBalance;
	}

	public boolean isPrinted() {
		return printed;
	}

	public void setPrinted(boolean printed) {
		this.printed = printed;
	}

	public Date getBillDate() {
		return billDate;
	}

	public void setBillDate(Date billDate) {
		this.billDate = billDate;
	}

	public Date getDueDate() {
		return dueDate;
	}

	public void setDueDate(Date dueDate) {
		this.dueDate = dueDate;
	}

	public String getBillNo() {
		return billNo;
	}

	public void setBillNo(String billNo) {
		this.billNo = billNo;
	}

	public double getDetailDigitalVoiceSubChargeLine() {
		return detailDigitalVoiceSubChargeLine;
	}

	public void setDetailDigitalVoiceSubChargeLine(
			double detailDigitalVoiceSubChargeLine) {
		this.detailDigitalVoiceSubChargeLine = detailDigitalVoiceSubChargeLine;
	}

	public double getDetailDigitalVoiceSubCallTransfer() {
		return detailDigitalVoiceSubCallTransfer;
	}

	public void setDetailDigitalVoiceSubCallTransfer(
			double detailDigitalVoiceSubCallTransfer) {
		this.detailDigitalVoiceSubCallTransfer = detailDigitalVoiceSubCallTransfer;
	}

	public double getDetailDigitalVoiceUsageChargeLocalCalls() {
		return detailDigitalVoiceUsageChargeLocalCalls;
	}

	public void setDetailDigitalVoiceUsageChargeLocalCalls(
			double detailDigitalVoiceUsageChargeLocalCalls) {
		this.detailDigitalVoiceUsageChargeLocalCalls = detailDigitalVoiceUsageChargeLocalCalls;
	}

	public double getDetailDigitalVoiceUsageChargeIDDCalls() {
		return detailDigitalVoiceUsageChargeIDDCalls;
	}

	public void setDetailDigitalVoiceUsageChargeIDDCalls(
			double detailDigitalVoiceUsageChargeIDDCalls) {
		this.detailDigitalVoiceUsageChargeIDDCalls = detailDigitalVoiceUsageChargeIDDCalls;
	}

	public double getDetailMobileVoiceChargeSubMobile() {
		return detailMobileVoiceChargeSubMobile;
	}

	public void setDetailMobileVoiceChargeSubMobile(
			double detailMobileVoiceChargeSubMobile) {
		this.detailMobileVoiceChargeSubMobile = detailMobileVoiceChargeSubMobile;
	}

	public double getDetailMobileVoiceChargeSubRoaming() {
		return detailMobileVoiceChargeSubRoaming;
	}

	public void setDetailMobileVoiceChargeSubRoaming(
			double detailMobileVoiceChargeSubRoaming) {
		this.detailMobileVoiceChargeSubRoaming = detailMobileVoiceChargeSubRoaming;
	}

	public double getDetailMobileVoiceChargeSubDataServices() {
		return detailMobileVoiceChargeSubDataServices;
	}

	public void setDetailMobileVoiceChargeSubDataServices(
			double detailMobileVoiceChargeSubDataServices) {
		this.detailMobileVoiceChargeSubDataServices = detailMobileVoiceChargeSubDataServices;
	}

	public double getDetailMobileVoiceUsageChargeLocalCalls() {
		return detailMobileVoiceUsageChargeLocalCalls;
	}

	public void setDetailMobileVoiceUsageChargeLocalCalls(
			double detailMobileVoiceUsageChargeLocalCalls) {
		this.detailMobileVoiceUsageChargeLocalCalls = detailMobileVoiceUsageChargeLocalCalls;
	}

	public double getDetailMobileVoiceUsageChargeIDDCalls() {
		return detailMobileVoiceUsageChargeIDDCalls;
	}

	public void setDetailMobileVoiceUsageChargeIDDCalls(
			double detailMobileVoiceUsageChargeIDDCalls) {
		this.detailMobileVoiceUsageChargeIDDCalls = detailMobileVoiceUsageChargeIDDCalls;
	}

	public double getDetailMobileVoiceUsageChargeRoamingCalls() {
		return detailMobileVoiceUsageChargeRoamingCalls;
	}

	public void setDetailMobileVoiceUsageChargeRoamingCalls(
			double detailMobileVoiceUsageChargeRoamingCalls) {
		this.detailMobileVoiceUsageChargeRoamingCalls = detailMobileVoiceUsageChargeRoamingCalls;
	}

	public double getDigitalVoiceSubscriptionChargesSummary() {
		return digitalVoiceSubscriptionChargesSummary;
	}

	public void setDigitalVoiceSubscriptionChargesSummary(
			double digitalVoiceSubscriptionChargesSummary) {
		this.digitalVoiceSubscriptionChargesSummary = digitalVoiceSubscriptionChargesSummary;
	}

	public double getDigitalVoiceUsageChargesSummary() {
		return digitalVoiceUsageChargesSummary;
	}

	public void setDigitalVoiceUsageChargesSummary(
			double digitalVoiceUsageChargesSummary) {
		this.digitalVoiceUsageChargesSummary = digitalVoiceUsageChargesSummary;
	}

	public double getMobileVoiceSubscriptionChargesSummary() {
		return mobileVoiceSubscriptionChargesSummary;
	}

	public void setMobileVoiceSubscriptionChargesSummary(
			double mobileVoiceSubscriptionChargesSummary) {
		this.mobileVoiceSubscriptionChargesSummary = mobileVoiceSubscriptionChargesSummary;
	}

	public double getMobileVoiceUsageCharges() {
		return mobileVoiceUsageCharges;
	}

	public void setMobileVoiceUsageCharges(double mobileVoiceUsageCharges) {
		this.mobileVoiceUsageCharges = mobileVoiceUsageCharges;
	}

	public double getCableTVSubscriptionChargesSummary() {
		return cableTVSubscriptionChargesSummary;
	}

	public void setCableTVSubscriptionChargesSummary(
			double cableTVSubscriptionChargesSummary) {
		this.cableTVSubscriptionChargesSummary = cableTVSubscriptionChargesSummary;
	}

	public double getAdditionalCableTVChannelsCharges() {
		return additionalCableTVChannelsCharges;
	}

	public void setAdditionalCableTVChannelsCharges(
			double additionalCableTVChannelsCharges) {
		this.additionalCableTVChannelsCharges = additionalCableTVChannelsCharges;
	}

	public double getTotalBill() {
		return totalBill;
	}

	public void setTotalBill(double totalBill) {
		this.totalBill = totalBill;
	}

	public double getGST_APPLIED() {
		return GST_APPLIED;
	}

	public Bill() {
		digitalVoiceSubscriptionChargesSummary = 0;
		digitalVoiceUsageChargesSummary = 0;
		mobileVoiceSubscriptionChargesSummary = 0;
		mobileVoiceUsageCharges = 0;
		cableTVSubscriptionChargesSummary = 0;
		additionalCableTVChannelsCharges = 0;
		detailDigitalVoiceSubChargeLine = 0;
		detailDigitalVoiceSubCallTransfer = 0;
		detailDigitalVoiceUsageChargeLocalCalls = 0;
		detailDigitalVoiceUsageChargeIDDCalls = 0;
		detailMobileVoiceChargeSubMobile = 0;
		detailMobileVoiceChargeSubRoaming = 0;
		detailMobileVoiceChargeSubDataServices = 0;
		detailMobileVoiceUsageChargeLocalCalls = 0;
		detailMobileVoiceUsageChargeIDDCalls = 0;
		detailMobileVoiceUsageChargeRoamingCalls = 0;

	}

}
